The present invention relates to a software testing system and, more particularly, to a system for testing human factors and system program performance.
Evaluation of human factors (i.e., factors such as screen design, command language syntax and the like that relate to interaction between a human and a non-human system) often occurs after software has been written. As the human factors evaluator generates suggestions or requirements, the software must be changed. A need has arisen for a method to have these sorts of recommendations incorporated before the final version of the software is written.
Moreover, the human factors evaluator often has a logistical problem in accommodating the required people in one laboratory to test the system product, once developed. Typically, such an evaluation session requires a number of observers: one video tape camera operator, a video tape recorder and operator, a subject, the program developer and the author of documentation. Such a system is disclosed, for example, in "Usability Testing: A Valuable Tool for PC Design," by D. B. Harrington, Hewlett-Packard Journal, pp. 36-40, January, 1986.
Currently, performance testing of a computerized system program lacks the capability to measure user response time automatically. Instead response measurements are made at the processor and not at the user's terminal. Gathering information at the terminal requires excess materials which introduce error into the results.
What is needed is an automatic system for gathering information from a software system and from a user to eliminate some or all of the aforementioned human observers and the costly equipment appertaining thereto.
It would be advantageous to provide a system that tests human factors parameters before the program is written in final form.
It would also be advantageous to provide for human factors efficiency measurements with a minimum number of people.
It would also be advantageous to perform measurements outside of laboratory constraints (e.g., in the worker's natural environment).
It would also be advantageous to provide a system whereby the performance of a system program can be measured automatically.
Moreover, it would be advantageous to provide a system that is interactively operable.